home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
Pakiet bezpieczenstwa
/
mini Pentoo LiveCD 2006.1
/
mpentoo-2006.1.iso
/
livecd.squashfs
/
usr
/
include
/
libol
/
resource.h.x
< prev
next >
Wrap
C/C++ Source or Header
|
2005-10-16
|
1KB
|
60 lines
#ifndef CLASS_DEFINE
struct resource
{
struct ol_object super;
int alive;
void (*(kill))(struct resource *self);
};
extern struct ol_class resource_class;
#endif /* !CLASS_DEFINE */
#ifndef CLASS_DECLARE
static void do_resource_free(struct ol_object *o)
{
struct resource *i = (struct resource *) o;
dont_free_live_resource(i->alive);
}
struct ol_class resource_class =
{ STATIC_HEADER,
0, "resource", sizeof(struct resource),
NULL,
do_resource_free
};
#endif /* !CLASS_DECLARE */
#ifndef CLASS_DEFINE
struct resource_list
{
struct ol_object super;
struct ol_queue q;
struct resource_node * (*(remember))(struct resource_list *self, struct resource *r);
void (*(kill_resource))(struct resource_list *self, struct resource_node *n);
void (*(kill_all))(struct resource_list *self);
};
extern struct ol_class resource_list_class;
#endif /* !CLASS_DEFINE */
#ifndef CLASS_DECLARE
static void do_resource_list_mark(struct ol_object *o,
void (*mark)(struct ol_object *o))
{
struct resource_list *i = (struct resource_list *) o;
do_mark_resources(&(i->q), mark);
}
static void do_resource_list_free(struct ol_object *o)
{
struct resource_list *i = (struct resource_list *) o;
do_free_resources(&(i->q));
}
struct ol_class resource_list_class =
{ STATIC_HEADER,
0, "resource_list", sizeof(struct resource_list),
do_resource_list_mark,
do_resource_list_free
};
#endif /* !CLASS_DECLARE */